Amazon Q Developer で Claude 3.5 Sonnet を搭載したインラインチャットをサポートしました
こんにちは、森田です。
以下のアップデートで、Amazon Q Developer で Claude 3.5 Sonnet を搭載したインラインチャットがサポートされました!
インラインチャットとは
インラインチャットは、すでに記述されているコードをユーザから与えられた指示に従ってコードの提案をしてくれる機能です。
これまでは Amazon Q Developer では、インライン提案、チャットインタフェースが利用できました。
インライン提案
チャットインタフェース
これらの機能については、既存のコードの変更や修正が行いづらい欠点がありました。
Claude 3.5 Sonnet 搭載
先日 Anthropic Claude 3.5のアップデートが行われました。
このアップデートされた Claude 3.5 では、コーディング機能が大きく向上しています。
詳しくは以下をご参照ください。
このアップデートされた Claude 3.5 Sonnet が Amazon Q Developer では搭載されているため、質の高いコード生成が期待されます!
使ってみる
環境設定
本記事では、Visual Studio Code 上で試してみます。
Visual Studio Code で Amazon Q のインストールを行います。
なお、すでにインストール済みの場合でも、新しいバージョン(v1.31.0)でないとインラインチャットを利用できません。
コード
今回は、冗長なコードとして以下を用意しました。
import numpy as np
def change_arr(arr):
shape = arr.shape
for i in range(shape[0]):
for j in range(shape[1]):
if np.random.randint(0,2):
arr[i][j] = np.random.randint(1, 10)
return arr
arr = np.random.randint(1, 10, (5, 5))
print("before arr\n", arr)
new_arr = change_arr(arr)
print("after arr\n", new_arr)
コメント文を生成してみる
作成したコードを全選択すると、以下のように⌘+I
が表示されるので、⌘+I
を押します。
画面上部に指示文を入力する箇所が表示されます。
今回は、コメント文を生成したいので「add comment」と入力します。
指示文入力後、以下のようにコード生成が行われます。
インタラクティブにコードの提案を行い、追加されたコードは緑色のラインで表示されます。
また、提案の受け入れはEnter
で、拒否はEscape
でワンクリックで可能です。
リファクタリング
今度は、実際にコードの追加・削除が必要な指示としてリファクタリングを行わせてみます。
コードを全選択行い、指示文に「Please refactor」を入力します。
今度は、削除するコードがあるため、削除されるコードは赤色のラインで表示されます。
日本語対応は?
コメント文の追加を日本語で行ってみます。
指示文には、「コメント文を日本語で追加してください」を入力します。
すると、以下のように日本語でも問題なく、コメント文の生成が行うことができました
日本語でも問題なく生成できるかなと思いましたが、日本語のコメントが含まれたコードでリファクタリングの指示を与えると
Amazon Q: Encountered an unexpected error when processing the request, please try again.
のエラーが発生しました。
日本語がコード中に含まれてたらダメなのではと思い、print文のメッセージを日本語に変更して「Please refactor」を行ったところ、今度は正常に生成できました。
この後もいろいろ試しましたが、リファクタの処理が日本語を含んでいると難しいようで、他の指示はエラーなく実行できました。
さいごに
実際に触ってみましたが、素早く、高品質なコード提案ができているように感じました。
最新の Claude 3.5 Sonnet を Amazon Q Developer 通して活用できるため、試してみる価値はあると思います。
Amazon Q Developer の無料利用枠でも利用できるので、ぜひ試してみてください!